package com.ruoyi.platform.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 手机号永久黑名单对象 t_permanent_blacklist_phone
 * 
 * @author ruoyi
 * @date 2025-08-19
 */
public class TPermanentBlacklistPhone extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 永久黑名单ID，自增主键 */
    private Long permanentBlacklistPhoneId;

    /** 手机号码 */
    @Excel(name = "手机号码")
    private String phoneNumber;

    /** 拉黑原因 */
    @Excel(name = "拉黑原因")
    private String reason;

    /** 解禁时间（永久黑名单一般为NULL） */
    @Excel(name = "解禁时间", readConverterExp = "永=久黑名单一般为NULL")
    private Date unbanTime;

    /** 状态：拉黑/解禁 */
    @Excel(name = "状态：拉黑/解禁")
    private String status;

    /** 操作类型 */
    @Excel(name = "操作类型")
    private String operation;

    public void setPermanentBlacklistPhoneId(Long permanentBlacklistPhoneId) 
    {
        this.permanentBlacklistPhoneId = permanentBlacklistPhoneId;
    }

    public Long getPermanentBlacklistPhoneId() 
    {
        return permanentBlacklistPhoneId;
    }

    public void setPhoneNumber(String phoneNumber) 
    {
        this.phoneNumber = phoneNumber;
    }

    public String getPhoneNumber() 
    {
        return phoneNumber;
    }

    public void setReason(String reason) 
    {
        this.reason = reason;
    }

    public String getReason() 
    {
        return reason;
    }

    public void setUnbanTime(Date unbanTime) 
    {
        this.unbanTime = unbanTime;
    }

    public Date getUnbanTime() 
    {
        return unbanTime;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setOperation(String operation) 
    {
        this.operation = operation;
    }

    public String getOperation() 
    {
        return operation;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("permanentBlacklistPhoneId", getPermanentBlacklistPhoneId())
            .append("phoneNumber", getPhoneNumber())
            .append("reason", getReason())
            .append("unbanTime", getUnbanTime())
            .append("status", getStatus())
            .append("operation", getOperation())
            .toString();
    }
}
